package com.itdachang.design.creatation.factory.abstractFactory;

/**
 * 工厂的产品
 * 也就是具体的汽车
 *
 * 怎么把一个功能提升提供一个层次 定义抽象（抽象类、接口）
 * 抽象类、接口、就有多实现，多实现那么自然就有多功能
 *
 * 四个角色
 * Product 抽象产品
 * ConcreteProduct 具体产品
 * Factory 抽象工厂
 * ConcreteFactory 具体工厂
 *
 *
 * 缺点：
 * 系统复杂度增加 产品单一
 *
 * 抽象汽车
 *      大汽车
 *      小汽车
 *      跑车
 *      多种汽车
 * @author gcq
 * @Create 2022-02-07
 */
public abstract class AbstractCar {
    String engine;
    public abstract void run();
}